Top 10k strings from 16-48 Magazine - Issue 21 (1985)(16-48 Tape Magazine)(Side B).tzx in <root> / bin / z80 / software / Sinclair Spectrum Collection TOSEC.exe / Sinclair ZX Spectrum - Magazines / Sinclair ZX Spectrum - Magazines - [TZX] (TOSEC-v2007-01-01) /

Back to the directory listing

   9 y=y+(y<175
   9 x=x+(x<255
   7 o,o;"PRESS 
   6 STOP THE TAPE
   6 PRESS A KEY
   5 z$="00000202
   5 RUN THE TAPE
   5 LET THE TAPE RUN
   4 );"               "
   4  copies.)"
   3 z$="00000204
   3 `9.95 Print'n'Plotter Products.
   3 PAINT PLUS
   3 ;"padcode"
   3 ;"lib2code"
   3 ;"lib1code"
   3 (((VVVVVVVV
   2 z$="10030203STOP THE TAPE":
   2 z$="10020203
   2 z$="04030104
   2 l=l+(l<max)*(k$="6"
   2 k$="7")*(y+yy<167
   2 k$="6")*(y+yy>7
   2 k$="5")*(x+xx>7
   2 `12.95 Softek International Ltd.
   2 ZERO COMPRESSION
   2 TOWER  LOADING
   2 GENERAL NOTES
   2 About `144  BRITISH MICRO Ltd.  
   2 ;"wincode"
   2 ;"padinst"
   2 ;"library 2"
   2 ;"library 1"
   2 ;"Use up and down keys to read thenotes. 
   2 ;"TOWER.SCR"
   2 ;"TOWER.COD"
   2 ;"REVIEWS"
   2 ;"CROSSWORD":
   2 88888888888=888
   2 888888888888888
   2 *(x+xx<254
   2 "lib2code"
   2 "lib1code"
   2 "M/drive No? (
   2 "ENTER file name";n$
   2  to cancel.        "
   2  to abort.)"
   2  for the menu, 
   2  for tape.)";d:
   2  for UDG's.(
   2   CONCLUSIONS   
   1 zzzzzzz:z*((((
   1 zzzzzzz::*((((
   1 zxxxxxxzWW
   1 zxxxxxxxGG
   1 z=prog+291
   1 z$=l$+c$+h$+v$+
   1 z$="18140103
   1 z$="10030203RUN THE TAPE":
   1 z$="10000212SIDE 
   1 z$="08000203
   1 z$="06030205INSTRUCTIONS":
   1 z$="0108020216/48PAD":
   1 z$="01020104
   1 z$="00020402WINDOWS":
   1 z$="00020402DRAWING":
   1 z$="00010602MODES":
   1 z$="00010502
   1 z$="00010302THAT'S IT!":
   1 z$="00000802TEXT":
   1 z$="00000802
   1 z$="00000402THE KEYS":
   1 z$="00000402
   1 yy=yy+(k$="e")*(y+yy<175
   1 xx=xx+(k$="f")*(x+xx<255
   1 xx=xx+(k$=
   1 x=x+(k$="f")*8
   1 raw mode the direction  and cursor keys will move the   flashing cursor."''"Pressing CAPS SHIFT at the same time as any direction key will  leave an ink line on the screen."''"Pressing SYMBOL SHIFT will eraseany ink in the path of the      cursor." 
   1 raw mode the cursor is movedby pixels with the 
   1 padinst   D
   1 padcode   I
   1 o,o;"Press frame number (
   1 o,o;"PRESS frame number. 
   1 o,o;"PRESS frame number of screen to be added. (
   1 o,o;"PRESS 1 2 3 4 5 6 7, 
   1 o,o;"Cursor keys scroll attributes.  
   1 o,o;"Cursor keys change size, Delete backspaces, ENTER finishes. ";g$
   1 o,o;"CLEAR SCREEN. ARE YOU SURE?               (Y/N)                 "
   1 o,o;"ARE YOU SURE YOU WANT TO QUIT?           (
   1 o,o;"   Press 
   1 o,o;"    PRESS ANY KEY TO PAUSE                                        "
   1 main rouitine
   1 library 2 
   1 library 1 j
   1 lib2code  
   1 lib1code  
   1 l=l+(k$="6"
   1 k$="8")*(xx+x<247
   1 k$="8")*(x+xx<248
   1 k$="7")*(yy>8
   1 k$="6")*(y-yy>0
   1 k$="5")*(xx>8
   1 ii,o;"The routine at 22AAH in the ROM is called with the y co-ordinatein the B register and the value for x in the C register."
   1 i,o;"HIT A KEY(
   1 i,o;"(((((( (!(""(#($(%(&('(((((((((((":
   1 display subroutine
   1 direction    keys
   1 comp21    
   1 c=c+(k$="8"
   1 agazine Ltd.   *6\$:
   1 a$="                                "
   1 Z$="LLCC0202"+A$(N,1
   1 Z$="00000420BYE BYE!":
   1 Z$=" YCC0202"+A$(N,Y/2
   1 YY             
   1 XXXXXXX XXXX   X X X XX  XXXXXXXXX X X X X XXXXXXX XXXX  X X X X  XXXX XXXXXXX X X X X XXXXXXXXX  XX X X X   XXXX XXXXXXXC.
   1 WINDOW SCROLLING ROUTINE
   1 WINDOW SCROLLING
   1 WINDOW SCROLL
   1 VVVV((((((((((((((((((((((((VVVVVVVV(((((((((((8888(.......(VVVVVVVV(88888888888888(.FFFFF.(VVVVVVVV(88888888888888(.F600F.(VVVVVVVV(88898888888888(.F000F.(VVVVVVVV(88899998888888(.F000F.(VVVVVVVV(88899999888888Gpp000F.(VVVVVVVV(888888998pxxxxxppppFF.(VVVVVVVV(888889998xxxxxxxFpp...(VVVVVVVV((((((((((xxxxxxx@@(((((VVVVVVVV((((((((((xxxxx~G@@@((((VVVVVVVV((((((((((xxxx
   1 TOWER.SCR 
   1 TOWER.COD 
   1 TOWER.BAS N
   1 TOWER OF HANOY
   1 THE NEXT PROGRAM ON THIS TAPE!!!
   1 THE KING WHO SERVED UP JOHN'S   HEAD TO SALOMEK
   1 SEPTEMBER 
   1 SCREEN COMPRESSION ROUTINE
   1 SAVE""wincode""CODE 32000,33
   1 S$="XXXXXXX XXXX   X X X XX  XXXXXXXXX X X X X XXXXXXX XXXX  X X X X  XXXX XXXXXXX X X X X XXXXXXXXX  XX X X X   XXXX XXXXXXX"
   1 ROP can   copy from memory as many times  as you like."
   1 RIGHT";b;"  
   1 REVIEWS       
   1 REVIEWS   
   1 RAW mode and from this mode you can select 
   1 QUIT ROUTINE
   1 PRINT WORD
   1 PRINT CLUE
   1 PRESS ANY KEY
   1 OOOOOxxxFF
   1 MODE to manipulate the screen."
   1 MODE and starts from the       position of the attribute       cursor."
   1 MODE  to work on the attributes or    
   1 MEM","","   
   1 M/CODE LIBRARY 2
   1 M/CODE LIBRARY 1
   1 LIBRARY 2     
   1 INPUT WORD
   1 ICK will put the contents of the window  into memory and that 
   1 GRAPHICS REVIEWS
   1 GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGDDDDDDDDDGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGEEEEEEEEEEEEEGGGGGGGGGGGGGGGGGGGEEEEEEEEEEEEEGGGGGGGGGGGGGGGGGGGGGGGEEEEEGGGGGGGGGGGGGGGGGGGGGGGGGGGEEEEEGGGGGGGGGGGGGGGGGGGGGGGGGGGEEEEEGGGGGGGGGGGGGGGGGGGGGGGGGGGEEEEEGGGGGGGGGGGGGGGGGGGGGGGEEEEEEEEEEEEEGGGGGGGGGGGGGGGGGGGEEEEEEEEEEEEEGGGGGGGGG
   1 GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
   1 GGGGGGGGGGGGGGGGGGGGGGG
   1 GGGGGGGGGGGGGGGGGGGBrtlhG
   1 GGGGGGGGGGGGGGGGGGBrtlhGG
   1 GGGGGGGGGGGGGGGGGBrtlhGGGGG
   1 GGGGGGGGGGGGGGGGBrtlhGGGGGG
   1 GGGGGBrtlhGGGGGGGGGGGGGGGGGG
   1 GGGGBrtlhGGGGGGGGGGGGGGGG
   1 GGBrtlhGGGGGGGGGGGGGGGGGGG
   1 GBrtlhGGGGGGGGGGGGGGGGGGG
   1 FRANK BRUNO'S BOXING
   1 FFOOOOOOOOFFFFFFFFxxxxxxx
   1 FFFxxxxxx8
   1 FFFFxxxxxxx8
   1 FFFFFOOOOOOOOFFFF
   1 FFFFFFFFxxxxxxxy
   1 FFFFFFFFxxxxxxxx
   1 FFFFFFFFxxxxxxxO
   1 FFFFFFFFFFFFGFF
   1 FFFFFFFFFFFFFFFF
   1 EXPANSION LISTING
   1 ELITE COMPETITION,
   1 ELITE COMPETITION
   1 DEMONSTRATION
   1 Created with Ramsoft MakeTZX
   1 Chiswick, London W4 4PH.
   1 CROSSWORD     
   1 CROSSWORD 
   1 COMPRESSION LISTING
   1 COMPETITION   
   1 CHECK FOR FINISH
   1 CFFFFFFFGx
   1 CADAVER    1 1 6 00HAM        1 9 2 00NOVEMBER   3 4 7 00OILRIG     5 1 5 00URGE       5 8 3 00ACTS       7 1 3 00CALIPH     7 6 5 00ZEPPELIN   9 1 7 00COS        111 2 00LINSEED    115 6 00CONGO      1 1 4 10ANZAC      7 1 4 10PLATYPUS   4 3 7 10VIOLIN     1 5 5 10PEEL       8 5 3 10REEF       1 7 3 10MARIAN     6 7 5 10HIBERNIA   1 9 7 10MORSE      1 114 10HEROD      7 114 10W
   1 ASSEMBLY LISTING
   1 ARRAY AND NT E E R   UT A LOGICALRED L U   LI  COMMA  SBIN W E BITU E  IN E RT X   T E IEXTEND OPEN O  O   E GOR  RETURN 
   1 ;"w=17 characters";
   1 ;"padinst":
   1 ;"library 2":
   1 ;"library 1":
   1 ;"You must pick it up first.      Press any key to continue.      ":
   1 ;"We start our library with a muchrequested routine to compress   the display file."
   1 ;"Verified O.K. Press any key.   ":
   1 ;"The code starts at 32000 and it is 87 bytes long."
   1 ;"TOWER.BAS"
   1 ;"Saved and verified O.K.            Press any key.":
   1 ;"Rewind and play to verify.":
   1 ;"REVIEWS":
   1 ;"PRESS the letter you wish to    define. 
   1 ;"PRESS frame number. 
   1 ;"PRESS A KEY":
   1 ;"PRESS A KEY (
   1 ;"CROSSWORD"
   1 ;"ARE YOU SURE YOU WANT TO QUIT?  PRESS Y FOR YES OR N FOR NO."
   1 ;"16/48PAD":
   1 ;"16/48PAD"
   1 ;"(Try BREAK and experiment.)            
   1 ;" PAPER";
   1 ;"          ":
   1 ;"                                                               ":
   1 ;"                                                                ":
   1 ::888888888
   1 8::::8888888888
   1 888888888888==888
   1 8888888888888=888
   1 888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888
   1 888888888888888888
   1 8888888888888888
   1 88888888888888800000000
   1 8888888888888880000
   1 888888888888880000000000
   1 8888888888888000000000000
   1 88888888888800000000000000
   1 32048 will expand the file back onto the screen."
   1 32000 will     perform the compression and     return with the end address of  the compressed file in x."
   1 16/48PAD      
   1 16/48PAD  
   1 16/48#21/2
   1 16/48 Magazine,
   1 10 Barley Mow Passage,
   1 0000000088:::::8888888
   1 000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000008000800000000000000000000000000000888888888000000000000000000000088888888880000000000000000000
   1 00000000000
   1 -((VVVVVVVV
   1 -(((VVVVVVVV
   1 +(k$>"5")+(k$="6")+2
   1 *(k$="x")*(y-yy>0
   1 *(k$="k")-.2
   1 *(k$="j"):
   1 *(k$="e")*(y<175
   1 *(k$="a"):
   1 *(k$="7"))
   1 *(k$="4")+(k$>"4")*10
   1 *(k$="3")+12
   1 *(k$="1")+6
   1 );"hours ";
   1 )-(k$="x")*(y+yy>0
   1 )-(k$="s")*(x>7
   1 )-(k$="s")*(x+xx>0
   1 )*(y+yy<175
   1 )*(y+w<167
   1 )*(x+xx<255
   1 )*(x+w<247
   1 )*(x+h<256
   1 ));"Minutes."'"PRESS ANY KEY (
   1 ) to  store. Press 
   1 (a/256)"'"To display the file poke the    same two numbers into 32049 and 32050 respectively."
   1 (a/256)          POKE 32005,a-256*
   1 (((VVVVVVVV((((((((@
   1 (((VVVVVVVV(
   1 (((VVVVVPPV(((((((((@xxxxxwpp
   1 (((VPPVVVVV(((((((((@xxzxx~G
   1 ((((VVVVVVVV
   1 ''''"In most modes you have two ways of moving the cursor, boxes,    windows or circles."
   1 '''"There are 3 modes. This may seemconfusing, but the availability of each mode is always clearly  advertised at the bottom of the screen."
   1 '''"The only thing which you need toremember here is that 
   1 '''"Text entry is accessed from the 
   1 '''"Press any key to start again."''" 
   1 '''"Most of this should be much     clearer when you see the programin action. Especially as the    options are displayed on the    screen at all times."
   1 '''"In the 
   1 ''"The cursor keys (on good o'l    rubber keyboards keys 5-8) move the cursor by 8 pixels at a timefor faster movement."
   1 '"You start in 
   1 '"You must use the cursor keys to select the size of text you wishto use."''"This is the one occasion when   the rubber key owner must use   the CAPS SHIFT with keys 5-8.   This is because the unshifted   keys will simply print the      numbers."
   1 '"When transferring the display   file to memory the routine will stop every time it finds a zero.After transferring the zero it  will count the number of zeros  which follow and transfer the   number it counts."
   1 '"WRITE down the sequence of key  presses and send it in to-"
   1 '"To store the compressed file at any other address(a) you can-   POKE 32004,
   1 '"The subroutine returns with the address of the screen byte in   the HL register pair. (It also  puts the pixel position within  that byte into the A register,  but we will ignore that in this program.)"
   1 '"The scroll uses CALL 22AAH to   get the address of the start of each row of pixels into DE and  the address of the row beneath  into HL. Then it moves the lowerrow up with LDIR."
   1 '"The routine calls a very useful routine in the ROM. This residesat 22AAH (8873 decimal) and is  used to find the screen address of any pixel."
   1 '"The compression routine stores  the compressed display file at  32090. LET x=
   1 '"The code is not relocatable. I  recommend using an assembler if you want to relocate.";#1
   1 '"Since this is the only CALL, thecode is relocatable.";#i;
   1 '"Rotations, Flips and Scrolls    always operate on the visible   contents of the window and they finish by performing the same   function as 
   1 '"RANDOMIZE 
   1 '"Any data containing blocks of   zeros (not just screens) can be compressed considerably using   this routine."
   1 "or circles you have to INPUT theradius or curvature.","","Enclosed shapes can be filled   with ink or one of 4 shading    patterns."
   1 "library 2"
   1 "library 1"
   1 "leaving a trail of 3D brick wallbehind you.",""
   1 "end1","00010304
   1 "end1","00000404
   1 "WINDOWS      
   1 "There is an associated set of   utilities called the SCREEN     MACHINE. This has a selection ofmachine code routines for addingor manipulating screens. If you have been a regular 16/48 readeryou will find nothing new here." 
   1 "The next page shows a table of  scores for all the programs in  this review. The maximum mark ineach category is 5. A zero mark indicates that a function is notavailable."
   1 "The fill routine can be defined in almost unlimited ways and canproduce amazing efects.","end1"
   1 "TOWER.SCR"
   1 "TOWER.COD"
   1 "TOWER.BAS"
   1 "So just to recap-","","POKE MEM+1,y","POKE MEM+3,x","POKE MEM+10,h","POKE MEM+23,w","RANDOMIZE 
   1 "SPEED        
   1 "Like PAINT PLUS, it doesn't drawon the bottom two lines of the  screen.","","Value for money 10/10!","end2"
   1 "IF IT WASN'T SYMMETRICAL IT     WOULD BE A GRANNY","ROBIN'S MAID","THE LATIN NAME FOR THE EMERALD  ISLE","IN THIS ALPHABET YOU DASH YOUR  Ts AND DOT YOUR Es","THE KING WHO SERVED UP JOHN'S   HEAD TO SALOME"
   1 "ENTER the word ";
   1 "ENLARGE      
   1 "EASE OF USE  
   1 "CROSSWORD"
   1 "CIRCLES      
   1 "About 18 month ago I reviewed   the only Spectrum sketch pad    program worth considering at thetime - Melbourne Draw. But how  does it compare with today's    pixel manipulators?"
   1 "ATTRIBUTES   
   1 "A TRIGONOMETRICAL LETTUCE","THE OIL USED IN OIL PAINT","THE 2ND LONGEST RIVER IN AFRICA","A MEMBER OF THE ANTIPODEAN      COMMONWEALTH FORCES","BEAK, WEBBED FEET, LAYS EGGS,   BUT NOT A DUCK OR EVEN A BIRD","A NON FELONIOUS FIDDLE","THE FOUNDER OF THE LONDON POLICE"
   1 "A CORPSE FROM CARD AVE","AMATEUR RADIO OPERATOR","THE MONTH AFTER NEXT","A SHOUT AND A BACKWARD GIRL     SPELL OUT THIS INSTALLATION","EGG ON","A NEW TESTAMENT BOOK ABOUT MIXEDUP CATS?","MUSLIM CIVIL OR RELIGIOUS LEADER","THE ""LED"" VERSION IS LOUDER THANTHE FLYING ONE"
   1 "63319",174
   1 "63179",46
   1 "3",o;"This month we give a short      routine (only 33 bytes) which   will scroll the contents of any size of window. As written it   scrolls upward, but when you seehow it is done you shouldn't    have any trouble making it work downwards."
   1 "23658",o:
   1 "23606",o:
   1 "23301",(k$="q")+2
   1 "23300",16
   1 "16/48PAD"
   1 "16/48#21/2"
   1 "1  INTRODUCTION","2  PAINT PLUS","3  THE ARTIST","4  GRAFPAD","5  16/48PAD","6  CONCLUSIONS","Q  QUIT"
   1 ","When all the zeros are done we  can do the next byte.","
   1 ","VALUE!       
   1 ","SHADE/FILL   
   1 ","SCALING      
   1 ","LOOP again if we have not done  all the rows.","   RET","Back to BASIC."
   1 ","If the counter reaches 0(or 256)then exit from the count loop.","  DEC  BC","One less byte to do.","  LD   A,B","Check whether we have finished.","  OR   C","A will be 0 if BC=0.","  JR   NZ,
   1 ","If some zeros still left repeat this loop.","  JR   
   1 ","If not zero then go to the exit from the count routine.","  INC  HL","Point to the next byte.","  INC  E","Add 1 to the count."
   1 ","If not zero go back and do the next byte.","  PUSH DE","Save the pointer so that we can use E as a counter.","  LD   E,1","Set zero counter to 1."
   1 ","If counter is zero then we go   back and do the next byte.","
   1 ","If byte not zero then transfer  the next byte.","  LD   A,(HL)","If the last byte was zero this  one is the zero counter.","  INC  HL","Move the pointer on."
   1 ","If BC=0 then jump to exit.","  OR   A","Check byte for zero.","  JR   NZ,
   1 ","FULL SCREEN  
   1 ","FLIP/ROTATE  
   1 ","Exit if we have finished."
   1 ","Do the next byte."
   1 ","Carry on counting zeros if we   have not finished."
   1 ","CURVES       
   1 ","","","This demo shows","one way of","using the window.","","If we load the","code at MEM","(in this case","MEM=32000)","We must...","","POKE MEM+1,y","","POKE MEM+3,x","","POKE MEM+10,h","","POKE MEM+23,w","","and call the","routine with","","RANDOMISE USR MEM"
   1 "(300+100*
   1 "''"Cursor"'"keys"'"move *"''"
   1 "''"Correct entries enter a draw on 15th OCTOBER. 1st prize `75 NikeSportswear voucher. 2nd prize a `25 voucher. Plus 
   1 "'"When you see the picture use    keys 
   1 "","You pays your money, and you    takes your choice."
   1 "","You can use the PAINT PLUS      software with the Grafpad (why  anyone would want to beats me!) or you might even hack into     16/48PAD and change the basic toaccept Grafpad input.","","","What more could you want?"
   1 "","When you do produce a Spectrum  masterpiece, why not send it to us and get your name in Bytes!","end1"
   1 "","This package is an updated and  slightly improved version of    P&P's old ""Paintbox"" program.","","The package is functional, but  short on drawing facilities. Youare limited to drawing lines    between points. If you want arcs"
   1 "","This is the most sophisticated  of the software packages.","It has a very powerful airbrush function which alows you easily to define the brush area and    spray pattern. Imagine moving a cursor around the screen and"
   1 "","There is a magnify by 8 facilitywhich is greatly  inferior to   the one on Melbourne Draw."
   1 "","The words seem","to come from","nowhere because","they are printed","in blue ink on","blue paper.","","Since the routine","only scrolls the","ink, you don't","see it until it","scrolls into the","line above.","",""
   1 "","The overlay mode is a powerful  facility which enables you to   cut and paste portions of your  design. It will even stretch or squeeze sections of screen in   either direction."
   1 "","The UDG functions are very good.You can have up to 5 banks of   UDG's in memory at one time."
   1 "","The 90 degree window rotation isunique and the window facilitiesin general make the program veryuseful.","","I found the key layout awkward  and the lack of a magnification routine would make me revert to Melbourne Draw for fine work."
   1 "","So what do you get for all this money? Well, you get some very  sophisticated hardware in the   form of an A4 graphics tablet   and some excellent software by  Jon Ritman."
   1 "","Of course `9.95 is a lot to pay for a manual, but this is easilythe best book on screen creationand manipulation on the Spectrumthat I have seen.",""
   1 "","It takes time and effort to get the best out of this packeage,  but the power is there and it   would be hard to do better      without added hardware.","end2"
   1 "","I reviewed this in issue 6 and  said that it was the ultimate inSpectrum graphics aids. This is still true. If you are serious  about Spectrum graphics then youcan do no better than to invest in a Grafpad."
   1 "","All the programs reviewed will  allow you to create high res'   designs and let you define User Defined Graphics. Although they all do the same job their pricesrange from 
   1 "","A very important, but commonly  overlooked, part of any softwarepackage is the manual. The P+   manual is excellent.","end1"
   1 "  POP   AF","Get the counter of the stack.","  DEC  A","decrement the counter.","  JR   NZ,
   1 "  OR   A","Check counter for zero.","  JR   Z,
   1 "  Melbourne Draw has aged well. For value and ease of use it    would still be my choice for    most situations."
   1 "  LD   HL,32090","Point HL at the compressed file.","  LD   DE,4000H","Point DE at the display file.","  LD   BC,6912","BC holds the length of the file when expanded."
   1 "  LD   HL,16384","Point HL at display file.","  LD   DE,32090","Point DE at storage location.","  LD   BC,6912","Put display file length in BC.","
   1 "  LD   A,E","Fetch the count.","  POP  DE","Get the pointer off the stack.","  DEC  A","Remove the original 1 from the  count.","  LD   (DE),A","Put the zero count in the       compressed file.","
   1 "  JR   Z,
   1 "  JR   NZ,
   1 "  JP   PO,
   1 "  If you need lots of power you will have to go for ARTIST and  if you can justify the expense  then buy a Grafpad." 
   1 "  INC  DE","Point to the next location.","  DEC BC","One less left to do.","  LD   A,B","Check whether we have finished.","  OR   C","A will be 0 if BC=0.","  JR   Z,
   1 "  However, you have a perfectly acceptable, but by no means     perfect (Thanks a million!-Ed.) graphics package with 16/48PAD. So why worry?"
   1 "   POP DE","Get the upper row address off   the stack into DE.","   PUSH HL","Save the lower row address on   the stack. It will be the upper row address next time.","   LD   B,0","Empty the B register as LDIR    will only need 32 bytes max.","   LD   C,WIDE","Load BC with the width of the   window in bytes."
   1 "   POP BC","Retreive x,y co-ordinates.","   LD   A,HIGH","Load the A register with the    height of the window(in pixels).This acts as a counter.","
   1 "   LDIR","Move the row of pixels up.","   POP  HL","Retreive the lower row address.","   POP  BC","Retreive the x,y co-ordinates.","   POP  AF","Retreive the row count.","   DEC  A","One row less left to do."
   1 "   LD   B,Y","Put upper Y co-ordinate in B.","   LD   C,X","Put left X co-ordinate in C.","   PUSH BC","Save BC because B is corrupted  by the ROM routine.","   CALL 22AAH","Call the pixel address routine. HL now holds address of top row."
   1 "   JR   NZ,
   1 "   DEC  B","Drop Y by one to find the       address of the next row down.","   PUSH BC","Save the x and y values.","   PUSH HL","Save the upper row address on   the stack.","   CALL 22AAH","Call the ROM to put the lower   row address in HL."
   1  you will return  to this page and the picture    will remain as you left it." 
   1  with this mag toover `140 for he GRAFPAD.","end2"
   1  vertical   flip, 
   1  tohere^. 
   1  to"'"answer a"'"clue."''"
   1  to read again or,          
   1  to quit & load 16/48PAD.":
   1  to produce  the unscrambled screen."''"If you press 
   1  to page backwards."''" 
   1  to move, Cursor sets size  
   1  to fetch the frame.      PRESS 
   1  to combine all ink or 
   1  to cancel.)"
   1  to cancel.       " 
   1  to XOR ink, 
   1  scroll ink.
   1  or cursor, 
   1  or cursor to move corner
   1  or cursor 
   1  or ENTER to cancel. "
   1  horizontal flip, 
   1  forthis^. 
   1  for yes)            " 
   1  for the menu."
   1  for the first 10."
   1  for menu.           "
   1  for flash.         "
   1  for brightness.    "
   1  for border colour. ":
   1  for PAPER colour.  ":
   1  for INK colour.    "
   1  changes"'"mode"'"(across or"'"down)"''"Press"'"
   1  cancels.":
   1  cancels." 
   1  cancels. ":
   1  cancels. "
   1  WINDOW SCROLL 
   1  TO SEE A DEMO SCREEN"
   1  START THE TAPE 
   1  QUITS"''"
   1  PUSH DE","Put the last address of the fileon the stack.","  POP  BC","Fetch the final address into BC.","  RET","Back to basic." 
   1  PUSH AF","The zero loop starts here by    saving the the counter.","  LD   A,0","Fetch a zero.","  LD   (DE),A","Put a zero on the screen."
   1  PUSH AF","Save the counter"
   1  POP  AF","Restore the Stack Pointer to thereturn address.","  RET","Back to Basic." 
   1  LOADED - PRESS ANY KEY 
   1  LD   A,(HL)","Get the next byte.","  OR   A","Check for zero.","  JR   NZ,
   1  LD   A,(HL)","Fetch byte.","  LDI","Move (HL) to (DE), increment HL and DE, decrement BC.","  RET  PO","If BC=0 we have finished.","  OR   A","Check byte for zero."
   1  LD   A,(HL)","Fetch byte.","  LDI","Move (HL) to (DE), increment HL and DE, decrement BC."
   1  DON'T RUN OR CLEAR:GOTO 1.":
   1  DEC  E","Remove the original 1.","  LD   A,E","A now holds the number of zeros to be added.","  POP  DE","Fetch the pointer.","  LD   (DE),A","Store the count.","  INC  DE","Point to the next space.","  JR   
   1  B";b;"   
   1  AGAIN ? (Y/N) 
   1  = PAINT PLUS","","
   1  = MELBOURNE DRAW"
   1  = GRAFPAD","","
   1  = ARTIST","","
   1  = 16/48PAD","","
   1  (for kolour!) mode the attribute cursor is moved with  the direction keys. CAPS SHIFT  sets the attributes to the      values shown at the bottom of   the screen."
   1   for tape,";
   1   for microdrive,";
   1   for menu."
   1   UP & RIGHT"'" 
   1   UP & RIGHT"
   1   INVALID  
   1   INTRODUCTION  
   1   HOW IT WORKS  
   1   DOWN & RIGHT"'" 
   1   DOWN & LEFT"'"
   1                                                                 ";
   1                                                                                                 ";